package com.example.hospital_208.dao;

import com.example.hospital_208.po.WorkPlan;
import org.apache.ibatis.annotations.Mapper;

import java.util.Date;
import java.util.List;
import java.util.Map;

@Mapper
public interface WorkPlanDao {

    // 插入排班计划
    int insertWorkPlan(WorkPlan workPlan);

    // 根据日期获取排班计划
    WorkPlan selectByDay(Map<String, Integer> dateParams);

    // 更新排班计划状态
    int updateByDay(Map<String, Object> updateParams);

    // 根据周获取医生排班信息
    List<WorkPlan> getWorkPlanByWeek(String week);

    // 获取指定日期的医生排班信息
    WorkPlan selectAllInfo(String day);

    // 查询所有排班计划
    List<WorkPlan> findAllWorkPlans();

    // 根据日期范围查询排班计划
    List<WorkPlan> findWorkPlansByDateRange(String startDate, String endDate);

    // 根据状态查询排班计划
    List<WorkPlan> findWorkPlansByStatus(int status);

    // 查询所有排班日期
    List<String> findAllDays();
}